#ifndef CGAME_H
#define CGAME_H

#include <string>

#define DATA_RESOURCE_FILENAME                                          "game.cfg"
#define DATA_RESOURCE_PATH_FILENAME                                      "./Data/game.cfg"
#define APPLICATION_WINDOW_TITLE                                        "The Game!"


class CGraphicsManager;

class CGame
{
private:
    std::string m_ErrorString;
    CGraphicsManager *m_GraphicsManager;

    bool Initialize(int argc, char **argv);
    void Shutdown();

    CGame(const CGame& other);
    CGame& operator=(const CGame& other);

protected:
public:
    CGame();
    virtual ~CGame();

    void Run(int argc, char **argv);

    // Getter Functions

    std::string GetErrorString()                                    { return m_ErrorString; }
};

#endif // CGAME_H
